package com.wyh.domain.dto.groupOne.projectaboutdto.utils;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.validation.constraints.*;

@AllArgsConstructor
@NoArgsConstructor
@ApiModel(value = "新增楼盘")
@Data
public class HousesAdd {
    @NotNull(message = "上级id不能为空")
    @ApiModelProperty(value = "上级id",required = true)
    private Integer superiorid;

    @NotNull(message = "自身不能为空")
    @ApiModelProperty(value = "自身类型houses为楼盘",required = true)
    private String type;

    @NotNull(message = "上级类型不能为空")
    @ApiModelProperty(value = "上级类型organization为组织,gardenArea为园区",required = true)
    private String supertype;

    @Size(max = 15, min = 2, message = "楼盘名称2-15字")
    @NotNull(message = "名字不能为空")
    @ApiModelProperty("楼盘自身名字")
    private String name;
    @NotNull(message = "编号不能为空")
    @Size(max = 11, message = "楼盘编号长度不能超过11")
    @ApiModelProperty("楼盘编号")
    private String projectnumber;

    @ApiModelProperty("收款账号")
    private String receivingaccount;

    @Size(max = 25, min = 2, message = "开发商名称2-15字")
    @ApiModelProperty("开发商")
    private String developer;

    @ApiModelProperty("资源业态")
    private Integer resourcetypeid;


    @DecimalMax(value = "1000000.00", message = "占地面积只能输入数字和小数点，数值区间0.01-100000000.00")
    @DecimalMin(value = "0.01", message = "占地面积只能输入数字和小数点，数值区间0.01-100000000.00")
    @ApiModelProperty("占地面积")
    private Double landoccupationarea;

    @Max(value = 1000000,message = "数值区间10-1000000")
    @Min(value = 10,message = "数值区间10-1000000")
    @ApiModelProperty("户数")
    private Integer households;

    @DecimalMax(value = "1000000.00", message = "总建筑面积只能输入数字和小数点，数值区间0.01-100000000.00")
    @DecimalMin(value = "0.01", message = "总建筑面积只能输入数字和小数点，数值区间0.01-100000000.00")
    @ApiModelProperty("总建筑面积")
    private Integer totalarea;

    @DecimalMax(value = "1000000.00", message = "容积率只能输入数字和小数点，数值区间0.01-100000000.00")
    @DecimalMin(value = "0.01", message = "容积率只能输入数字和小数点，数值区间0.01-100000000.00")
    @ApiModelProperty("容积率")
    private Double floorarearatio;

    @Max(value = 1000000,message = "数值区间10-1000000")
    @Min(value = 10,message = "数值区间10-1000000")
    @ApiModelProperty("车位数")
    private Integer numberofvehicles;

    @ApiModelProperty("详细地址")
    @Size(max = 255, message = "详细地址长度不能超过255")
    private String address;

    @Size(max = 30, min = 2, message = "详细名称2-30字")
    @ApiModelProperty("楼盘区域")
    @Size(max = 255, message = "楼盘区域长度不能超过255")
    private String region;

    @ApiModelProperty("收款人")
    private String payee;

    @ApiModelProperty("复核人")
    private String reviewer;

    @ApiModelProperty("公章信息附件")
    private String officialseal;
    @ApiModelProperty("状态")
    private String state;
}
